package com.example.demo.service.impl;

import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;

/**
 * @apiNote 用于用户的增删改查
 * @author 钟顺浩
 * @email 2918185121@qq.com
 * @since 1.0.0
 */
@Transactional
@Service
public class UserServiceImpl implements UserService {


    @Autowired
    private UserMapper userMapper;


    /**
     * @apiNote 用于用户信息的查询
     * @author 钟顺浩
     * @email 2918185121@qq.com
     * @return List<User> 用户结果集对象
     * @since 1.0.0
     */
    @Override
    public List<User> select(){
        return userMapper.select();
    }


    /**
     * @apiNote 用于用户信息的修改
     * @author 钟顺浩
     * @param user 用户对象
     * @email 2918185121@qq.com
     * @return int 表示修改信息的条数
     * @since 1.0.0
     */
    @Override
    public int update(User user){
        return userMapper.update(user);
    }


    /**
     * @apiNote 用于用户信息的增加
     * @author 钟顺浩
     * @param user 用户对象
     * @email 2918185121@qq.com
     * @return int 表示增加信息的条数
     * @since 1.0.0
     */
    @Override
    public int insert(User user){
        return userMapper.insert(user);
    }


    /**
     * @apiNote 用于用户信息的增加
     * @author 钟顺浩
     * @param id 用户ID
     * @email 2918185121@qq.com
     * @return int 删除成功返回1，失败返回0
     * @since 1.0.0
     */
    @Override
    public int delete(int id){
        return userMapper.delete(id);
    }

}
